Atune-IL: An Instrumentation Language for Auto-tuning Parallel Applications
نویسندگان
چکیده
Automatic performance tuning (auto-tuning) has been used in parallel numerical applications for adapting performance-relevant parameters. We extend auto-tuning to general-purpose parallel applications on multicores. This paper concentrates on Atune-IL, an instrumentation language for specifying a wide range of tunable parameters for a generic auto-tuner. Tunable parameters include the number of threads and other size parameters, but also choice of algorithms, numbers of pipeline stages, etc. A case study of Atune-IL’s usage in a real-world application with 13 parameters and over 24 million possible value combinations is discussed. With Atune-IL, the search space was reduced to 1,600 combinations, and the lines of code needed for instrumentation were reduced from more than 700 to 25.
منابع مشابه
Towards fully automatic auto-tuning: Leveraging language features of Chapel
Application auto-tuning has produced excellent results in a wide range of computing domains. Yet adapting an application to use this technology remains a predominately manual and labor intensive process. This paper explores first steps towards reducing adoption cost by focusing on two tasks: parameter identification and range selection. We show how these traditionally manual tasks can be automa...
متن کاملA Language-Based Tuning Mechanism for Task and Pipeline Parallelism
Current multicore computers differ in many hardware aspects. Tuning parallel applications is indispensable to achieve best performance on a particular hardware platform. Auto-tuners represent a promising approach to systematically optimize a program’s tuning parameters, such as the number of threads, the size of data partitions, or the number of pipeline stages. However, auto-tuners require sev...
متن کاملRessort: An Auto-Tuning Framework for Parallel Shuffle Kernels
Ressort: An Auto-Tuning Framework for Parallel Shu✏e Kernels by Eric Love Master of Science in Computer Science University of California, Berkeley Krste Asanović, Chair This thesis presents Ressort, an auto-tuning framework for computational patterns that perform any kind of data-dependent data reordering or transformation. These programs, which we call shu✏e kernels, account for large fraction...
متن کاملApplication-independent Autotuning for GPUs
Autotuning is an established technique for adjusting performance-critical parameters of applications to their specific run-time environment. In this paper, we investigate the potential of online autotuning for general purpose computation on GPUs. Our application-independent autotuner AtuneRT optimizes GPU-specific parameters such as block size and loop-unrolling degree. We also discuss the pecu...
متن کاملAuto-tuning Parallel Programs at Compiler- and Application-Levels
Auto-tuning has recently received its fair share of attention from the High Performance Computing community. Most auto-tuning approaches are specialized to work either on specific domains dense/sparse linear algebra, stencil computations etc.; or only at certain stages of program execution compile-time, launch-time or run-time. Real scientific applications, however, demand a cohesive environmen...
متن کامل